package edu.sctu.practice.zhengsenwen.assign.assign03.test03;

/**
 * Created by zhengsenwen on 2015/11/12.
 */
public class CloneableCircle extends Circle implements Cloneable{

//            （3）创建CloneableCircle类，CloneableCircle类是Circle类的子类，并实现了Cloneable接口。
//    要求CloneableCircle类中有一个Name类型的数据成员creator，代表圆对象的创建者姓名。
//            （4）在CloneableCircle类中实现clone方法，以实现两个CloneableCircle类对象内容的克隆。要求实现对象内容深拷贝(深复制)。


    public Name creator;

    public Name getCreator() {
        return creator;
    }

    public void setCreator(Name creator) {
        this.creator = creator;
    }

    @Override
    protected Object clone() throws CloneNotSupportedException {
        CloneableCircle cloneableCircle = (CloneableCircle) super.clone();
        cloneableCircle.setCreator((Name) cloneableCircle.getCreator());
        return cloneableCircle;
    }

}
